"""
密码复杂度验证
"""
import re


def password_validate(password):
    if len(password) < 8:
        return False

    # 检查是否包含大写字母
    if not re.search(r'[A-Z]', password):
        return False

    # 检查是否包含小写字母
    if not re.search(r'[a-z]', password):
        return False

    # 检查是否包含数字
    if not re.search(r'[0-9]', password):
        return False

    # 检查是否包含特殊字符
    if not re.search(r'[^A-Za-z0-9]', password):
        return False

    return True